<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>
<head>
  <meta name="generator" content=
  "HTML Tidy for Linux/x86 (vers 1 September 2005), see www.w3.org">

  <title>bsearch</title>
  <link href="../cppreference.css" rel="stylesheet" type="text/css">
</head>

<body>
<table>
  <tr>
  <td>
  <div class="body-content">

  <div class="header-box">
    <a href="../index.html">cppreference.com</a> &gt; <a href=
    "index.html">Other Standard C Functions</a> &gt; <a href=
    "bsearch.html">bsearch</a>
  </div>

  <div class="name-format">
    bsearch
  </div>

  <div class="syntax-name-format">
    Syntax:
  </div>
  <pre class="syntax-box">
  #include &lt;stdlib.h&gt;
  void *bsearch( const void *key, const void *buf, size_t num, size_t size, int (*compare)(const void *, const void *) );
</pre>

  <p>The bsearch() function searches <em>buf[0]</em> to
  <em>buf[num-1]</em> for an item that matches <em>key</em>, using a
  binary search. The function <em>compare</em> should return negative
  if its first argument is less than its second, zero if equal, and
  positive if greater. The items in the array <em>buf</em> should be in
  ascending order. The return value of bsearch() is a pointer to the
  matching item, or <strong>NULL</strong> if none is found.</p>

  <div class="related-name-format">
    Related topics:
  </div>

  <div class="related-content">
    <a href="qsort.html">qsort</a>
  </div>
  </div>
  </td>
  


  </tr>
  </table>
</body></html>
